<?php
//声明该模型类的命名空间
namespace Common\Common;
//引入继承类的命名空间
use Think\Model;

class CommonModel extends Model
{

	//分页处理
	public function paging($pagesize, $page, $where)
	{
		$where = isset($where['category_id']) ? $where : '';
		/* 
		*下面这部分主要是获取当前页page和类别商品数量根据pagesize划分的总页数pages
		*/
		$pagesize = $pagesize;                              //每页最大显示条数，根据你自己设定，就不作为参数传进来了
		$records = $this->where($where)->count(); //查询某一类商品数据表中的全部数据,也可以根据where里的分类来查询，如果where为null，则查询所有商品的数量
		$pages = ceil($records / $pagesize);	    //求出总页数
		if ($page < 1 || $page > $pages)             //这里给个判断如果当前页不在[1,$pages]之间，展示错误信息，防止用户手动输入page传回
		{
			$page = 1; //强制跳转到第一页
		}

		$pageInfo[] = $page;
		$pageInfo[] = $pages;
		/* 
		*下面这部分主要是生成查询的limit条件
		*/
		$startrow = ($page - 1) * $pagesize; //算出开始行数		
		if ($startrow < 0 || $startrow > ($pages - 1) * $pagesize)  //判断开始行，如果开始行不在正常范围，强制跳转到0行
		{
			$startrow = 0;
		}
		if ($pages) {
			$sql_limit = "{$startrow},{$pagesize}"; //从哪一个自然行开始，往后显示多少条数据
			$pageInfo[] = $sql_limit;
		}
		return $pageInfo;  //返回分页信息数组

	}
}
